An Integer Set Framework for HPF Analysis and Code Generation
نویسندگان
چکیده
The core of the Rice dHPF compiler for High Performance Fortran is a practical, executable, equa-tional framework for data parallel program analysis and optimization. This framework, based on abstract operations on sets of integers, greatly simpliies the implementation of many key analysis, optimization and code generation tasks (even with a general computation partitioning model), and yet enhances their generality and exibility. This paper describes the equational framework, tradeoos in its implementation, the formulation and implementation of important analyses and optimizations within the framework, and a hierarchical code generation strategy to support the framework.
منابع مشابه
An Integer Set Framework for Hpf Analysis and Code Generation an Integer Set Framework for Hpf Analysis and Code Generation
Communication analysis and code generation for data parallel languages are naturally formulated as operations on integer sets. Principal analysis and code generation tasks require manipulation of sets of data, sets of processors, and sets of iterations. We describe a practical, executable, equational framework for analysis and optimization of High Performance Fortran based on abstract operation...
متن کاملHPF Analysis and Code Generation using Integer Sets
The core of the Rice dHPF compiler for High Performance Fortran is a practical, executable, equa-tional framework for data parallel program analysis and optimization. This framework, based on abstract operations on sets of integers, greatly simpliies the implementation of many key analysis, optimization and code generation tasks (even with a general computation partitioning model), and yet enha...
متن کاملCompiler-Optimization of Implicit Reductions for Distributed Memory Multiprocessors
This paper presents reduction recognition and parallel code generation strategies for distributed-memory multiprocessors. We describe techniques to recognize a broad range of implicit reduction operations, including those involving statements at multiple loop nesting levels and intermixed with conditional control flow. We introduce two new optimizations: factoring which increases data locality ...
متن کاملEfficient Computation of Address Sequences in Data Parallel Programs Using Closed Forms for Basis Vectors
Arrays are mapped to processors through a two-step process—alignment followed by distribution—in dataparallel languages such as High Performance Fortran. This process of mapping creates disjoint pieces of the array that are locally owned by each processor. An HPF compiler that generates code for array statements must compute the sequence of local memory addresses accessed by each processor and ...
متن کاملCode Generation in Bouclettes Ecole Normale Supérieure De Lyon Code Generation in Bouclettes Code Generation in Bouclettes
Bouclettes is a source to source loop nest parallelizer. It takes as input Fortran uniform, perfectly nested loops and gives as output a HPF (High Performance Fortran) program with data distribution and parallel ($HPF! INDEPENDENT) loops. This paper explains how the HPF program is built from some scheduling and allocation functions automatically generated by Bouclettes.
متن کامل